class Point {
  // 构造函数
  constructor(x, y) {
    this.x = x
    this.y = y
  }

  // 计算 |p1 p2| X |p1 p|
  static GetCross(p1, p2, p) {
    return (p2.x - p1.x) * (p.y - p1.y) - (p.x - p1.x) * (p2.y - p1.y)
  }

  // 判断点p是否在p1p2p3p4的正方形内
  static IsPointInMatrix(p1, p2, p3, p4, p) {
    let isPointIn =
          this.GetCross(p1, p2, p) * this.GetCross(p3, p4, p) >= 0 &&
          this.GetCross(p2, p3, p) * this.GetCross(p4, p1, p) >= 0
    return isPointIn
  }
}
module.exports = Point
